#ifndef  	__IPZ_ZBC_MSG_H_
#define		__IPZ_ZBC_MSG_H_

#define IPZOOM_CMD_FROM_NET   0
#define IPZOOM_CMD_FROM_232    1





extern SW_BOOL IsCmdReback;
extern SW_BOOL SubTaskStp;





void IPZ_ZBC_MSG_Init(void);
SW_RET IPZ_ZBC_MSG_Uart232Set_config(SW_BAUD_RATE baudRate,SW_DATA_BITS dataBits
                                                   ,SW_STOP_BITS stopBits,SW_PARITY parity,
                                                   SW_BOOL hardFlowCtrl,SW_BOOL softFlowCtrl);
SW_INT  IPZ_ZBC_MSG_Uart232Write(SW_UINT8 *src_buf,SW_INT  size);
SW_UINT8 *IPZ_ZBC_MSG_CmdReadNextQueue(void);
SW_BOOL IPZ_ZBC_MSG_QueryBufFull(void);
void IPZ_ZBC_MSG_WriteCmdQueue(SW_UINT8 *cmd,SW_INT len,SW_UINT8 cmdFrom);
SW_INT IPZ_ZBC_MSG_CmdProcessWork(void);
void IPZ_ZBC_MSG_CmdProcessThread(void);
SW_INT IPZ_ZBC_MSG_ZoomCameraViscaRec(SW_UINT8 *pCmd,SW_UINT8 cmdFrom);
SW_BOOL   IPZ_ZBC_MSG_CmdProcess(SW_UINT8   *pCmd);
void IPZ_ZBC_MSG_PrintCmdInfo(void);
SW_RET IPZ_ZBC_DomeThreadProc(SW_VOID);
void IPZ_ZBC_MSG_WriteTransDataQueue(SW_UINT8 *cmd,SW_INT len);

//发送232透明通道数据
int IPZ_ZBC_MSG_SerialPortDataSend(unsigned char * buf, int length);

//接收232透明通道数据
int IPZ_ZBC_MSG_SerialPortDataRecv(unsigned char * buf, int* length);

//应用层发送数据(应用层数据直接下发给云台外部)
int IPZ_ZBC_MSG_SendData(unsigned char * buf, int length);


//数字机芯在线升级数据
int IPZ_ZBC_readUpgradeData(SW_UINT8 * dataBuf, SW_INT dataLen);
//相机重启
int IPZ_ZBC_cameraReset();


#endif
